<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>处理用户输入</title>
  </head>
  <body>
    <div id="app">
      <!-- v-on指令用于定义事件 -->
      <button v-on:click="handleClick">btn</button>

      <hr />

      <p>{{ count }}</p>
      <!-- <button v-on:click="count++">count++</button> -->
      <!-- 事件的小括号可以加，也可以不加的 -->
      <!-- 加上括号可以做事件的传参 -->
      <button v-on:click="countAdd(2)">count+2</button>
      <button v-on:click="countAdd(3)">count+3</button>

      <hr />

      <!-- 当我们要使用事件对象event的时候，不能加括号 -->
      <!-- 如果加了括号，还想使用event，传入$event -->
      <button v-on:click="fn">btn2</button>
      <button v-on:click="fn2(8, $event)">btn3</button>

      <hr />

      <input type="text" v-on:input="handleInput" />
    </div>

    <script src="../../Vue.js"></script>
    <script>
      new Vue({
        el: "#app",
        data: {
          count: 1,
        },
        // methods选项就是定义事件处理函数的地方
        methods: {
          handleClick() {
            console.log(123);
          },
          countAdd(num) {
            this.count += num;
          },
          fn(e) {
            console.log(e);
          },
          fn2(num, e) {
            console.log(num);
            console.log(e);
          },
          handleInput(e) {
            console.log("input的值改变了");
            console.log(e.target.value);
          },
        },
      });
    </script>
  </body>
</html>
